package com.xmg.shop.api.service;

import com.xmg.shop.api.domain.Catalog;

import java.util.List;

public interface ICatalogService {

    List<Catalog> selectAll();

    List<Catalog> getChildenCatalogById(Long id);

    Catalog selectByPrimaryKey(Long catalogId);

    List<Catalog> getChildNode(long id);

    /**
     * 获取父类顶级节点
     * @return
     */
    List<Catalog> getParentNode();

    /**
     * 新增节点
     * @param code
     * @param name
     * @param parentCatalogId 父类id
     */
    void save(String code, String name, Long parentCatalogId);

    /**
     * 更新节点
     * @param catalog
     */
    void update(Catalog catalog);

    /**
     * 删除父节点以及所有子节点
     * @param id
     */
    void deleteChilds(Long[] id);

    List<Catalog> seleCatalogNameAndId();
}
